.tree-controls
  = render 'projects/find_file_link'

  = link_to s_('Commits|History'), namespace_project_commits_path(@project.namespace, @project, @id), class: 'btn btn-grouped'

  = render 'projects/buttons/download', project: @project, ref: @ref

.tree-ref-holder
  = render 'shared/ref_switcher', destination: 'tree', path: @path

%ul.breadcrumb.repo-breadcrumb
  %li
    = link_to namespace_project_tree_path(@project.namespace, @project, @ref) do
      = @project.path
  - path_breadcrumbs do |title, path|
    %li
      = link_to truncate(title, length: 40), namespace_project_tree_path(@project.namespace, @project, tree_join(@ref, path))

  - if current_user
    %li
      - if !on_top_of_branch?
        %span.btn.add-to-tree.disabled.has-tooltip{ title: _("You can only add files when you are on a branch"), data: { container: 'body' } }
          = icon('plus')
      - else
        %span.dropdown
          %a.dropdown-toggle.btn.add-to-tree{ href: '#', "data-toggle" => "dropdown" }
            = icon('plus')
          %ul.dropdown-menu
            - if can_edit_tree?
              %li
                = link_to namespace_project_new_blob_path(@project.namespace, @project, @id) do
                  = icon('pencil fw')
                  #{ _('New file') }
              %li
                = link_to '#modal-upload-blob', { 'data-target' => '#modal-upload-blob', 'data-toggle' => 'modal' } do
                  = icon('file fw')
                  #{ _('Upload file') }
              %li
                = link_to '#modal-create-new-dir', { 'data-target' => '#modal-create-new-dir', 'data-toggle' => 'modal' } do
                  = icon('folder fw')
                  #{ _('New directory') }
            - elsif can?(current_user, :fork_project, @project)
              %li
                - continue_params = { to:         namespace_project_new_blob_path(@project.namespace, @project, @id),
                                      notice:     edit_in_new_fork_notice,
                                      notice_now: edit_in_new_fork_notice_now }
                - fork_path = namespace_project_forks_path(@project.namespace, @project, namespace_key:  current_user.namespace.id,
                                                                                        continue:       continue_params)
                = link_to fork_path, method: :post do
                  = icon('pencil fw')
                  #{ _('New file') }
              %li
                - continue_params = { to:         request.fullpath,
                                      notice:     edit_in_new_fork_notice + " Try to upload a file again.",
                                      notice_now: edit_in_new_fork_notice_now }
                - fork_path = namespace_project_forks_path(@project.namespace, @project, namespace_key:  current_user.namespace.id,
                                                                                        continue:       continue_params)
                = link_to fork_path, method: :post do
                  = icon('file fw')
                  #{ _('Upload file') }
              %li
                - continue_params = { to:         request.fullpath,
                                      notice:     edit_in_new_fork_notice + " Try to create a new directory again.",
                                      notice_now: edit_in_new_fork_notice_now }
                - fork_path = namespace_project_forks_path(@project.namespace, @project, namespace_key:  current_user.namespace.id,
                                                                                        continue:       continue_params)
                = link_to fork_path, method: :post do
                  = icon('folder fw')
                  #{ _('New directory') }

            %li.divider
            %li
              = link_to new_namespace_project_branch_path(@project.namespace, @project) do
                = icon('code-fork fw')
                #{ _('New branch') }
            %li
              = link_to new_namespace_project_tag_path(@project.namespace, @project) do
                = icon('tags fw')
                #{ _('New tag') }
